package com.tom.architect.day02;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

import com.tom.architect.R;
import com.tom.architect.day01.simple5.MainActivity;

// 1. 每个方法都if判断，有网络跳转。缺点：每个方法都判断，没有扩展性可言。
// 2. 内涵段子，IOC 注解，添加checkNet 扩展一个网络判断。必须基于IOC注解。
// 3. jd网络处理。没网络，点击item是没反应的；有网络，点击才跳转。
//      面相切面编程AOP，OOP面向对象。

/**
 * 原理：
 * 点击运行按钮，aspectj第三方编辑器，class文件是由aspect 去编译的。
 * 是因为aspect回去拷贝代码 class文件，代码其实如下
 * if(有网络) {
 * // 页面跳转
 * }
 */

public class MainActivity2 extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);

    }

    @CheckNet // 检查网络注解
    public void jump1(View v) {
        Toast.makeText(this, "页面跳转", Toast.LENGTH_SHORT).show();
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }

    @CheckNet
    public void jump2(View v) {
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }

}